home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / asmutil / 80x0393.zip / GAMEPORT.ASM < prev    next >
Assembly Source File  |  1992-07-30  |  1KB  |  42 lines

  1. ;
  2. ;  GAMEPORT.ASM
  3. ;
  4. ;  Author: Paul Cullum
  5. ;  released to the public domain
  6. ;
  7.  
  8.         .MODEL TINY
  9.  
  10.         .DATA
  11.  
  12.         yes     DB      13,10,"Game port is installed.",13,10,"$"
  13.         no      DB      13,10,"Game port is not installed.",13,10,"$"
  14.  
  15.         .CODE
  16.         ORG 100h
  17.  
  18. start:  mov     al, 1           ;value to write to port
  19.         mov     dx, 201h        ;port number
  20.         out     dx, al          ;write to port
  21.         mov     cx, 0F00h       ;# of loops
  22.  
  23. port_loop:
  24.         in      al, dx          ;read from port
  25.         and     al, 0Fh         ;if jstick present, then AL should be
  26.         cmp     al, 0Fh         ; 0Fh after ANDing with 0Fh.
  27.         je      jstick_exists
  28.         loop    port_loop
  29.         mov     dx, OFFSET no   ;gameport not installed
  30.         jmp     SHORT done
  31.  
  32. jstick_exists:                  
  33.         mov     dx, OFFSET yes  ;gameport installed
  34.  
  35. done:   mov     ah, 9h
  36.         int     21h
  37.  
  38.         mov     ax, 4c00h
  39.         int     21h
  40.  
  41. END     start
  42.